Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- funny command



  Use of Erlang in WhatsApp

After many years, people are still discussing whether Erlang is a small language. People have all sorts of doubt about it, but with the appearance of WhatsApp, we may change our mind. What is WhatsApp, from its official website: WhatsApp Messenger is a cross-platform mobile messaging app which allows you to exchange messages without having to pay for SMS. The more funny thing is the main developer of WhatsApp Rick Reed worked in Yahoo and SGI before he joined WhatsApp and he didn't have any know...

   Erlang,WhatsApp,Architecture     2013-06-16 03:03:46

  How does GoLang know how many CPUs to use?

When running lscpu command on Linux, it will list the CPU info on the machine. Take one example where there is one CPU with 2 cores and each core has two threads which indicates there are 4 cores available. Now let's see how many cores GoLang program would identify. From output, NumCPU and GOMAXPROCS both output 4 which is expected. How does go runtime get this info, does it get it through similar command like lscpu or /proc/cpuinfo? Let's dig more in GoLang's source code. In runtim...

   GOLANG,CPU,NCPU     2020-12-29 23:22:15

  How DNS lookup works

When accessing a website, a domain name would be needed normally. To get to the actual web server, the domain name must be mapped to an actual IP address and the IP address will be used to reach the web server. The process of finding the IP address from a domain name is called DNS lookup.  How does DNS lookup work? There are tons of domain name and IP address around the world, there must be some well-designed architecture to support fast lookup. This post will explain how this works. DNS Se...

   DNS,DNS LOOKUP     2022-09-09 23:11:03

  Is Facebook becoming Tencent like?

Recently there is news that Facebook is developing a Reader application which is to compete with Flipboard and Pulse. This reminds me a few movements of Facebook in the past few months. First they built a copy of Snapchat named Poke which failed badly at last. Then they launched a new feature on Instagram named Video on Instagram which allows users to shoot and share short videos up to 15 seconds. This feature is to compete with Vine from Twitter. It seems Instagram wins over Vine on this. You c...

   Facebook,Tencent,Copy     2013-06-24 01:17:27

  Why PHP is (so much) better than Ruby?

I attended this weekend my first Ruby conference, Ruby Lugdunum in Lyon. Besides cool talks and the fun of meeting people like Nick, Blake, or Laetitia, my friend Camille & I did a surprise lightning talk about how PHP is better than Ruby. Here are the slides and a more detailed transcript: A lot of free hosts: it’s easy to find a PHP host, you just have to google “free php host” and you find a ton of free PHP/MySQL hostsBigger community: The PHP community is really huge,...

   PHP,Ruby,Comparism,Difference,Advantage     2011-06-29 08:34:12

  Start to work with rollup.js to pack JS files

rollup.js is a module bundler for JavaScript. It compiles small piece of JavaScript modules spreading in different files into a single larger standardized ES code file. This post will show some entry level usage for this library. Introduction Normally a bundler tool would compile a few small JavaScript files into a single JavaScript so that web browser can read, parse and render it properly. A bundler tool may be needed because of a few reasons: Some early stage browsers don't understand module...

   ROLLUP.JS,COMMONJS,ES MODULE,BUNDLE,WEBPACK     2022-06-12 00:00:14

  How Do I Enable Remote Access To MySQL Database Server?

By default remote access to MySQL database server is disabled for security reasons. However, some time you need to provide remote access to database server from home or a web server. If you want to remotely access to the database server from the web server or home, follow this quick tutorial.MySQL Remote AccessYou need type the following commands which will allow remote connections.Step # 1: Login Using SSH (if server is outside your data center)First, login over ssh to remote MySQL database ser...

   MySQL,Remote access,Enable,Host or webdomain     2011-10-31 00:31:41

  MaxHeapSize in JVM

MaxHeapSize is an option which is to set the JVM maximum heap size can be allocated. We can specify the MaxHeapSize as VM argument when we run the program by setting -XX:MaxHeapSize=, here can be 2M, 20M, 200M etc. We can also view the current MaxHeapSize set by setting different JVM options. To view the MaxHeapSize, we can use two JVM options : -XX:+PrintFlagsFinal and -XX:+PrintCommandLineFlags. Below is one example when running -XX:+PrintFlagsFinal: bool MaxFDLimit ...

   JVM,MaxHeapSize,Alignment     2014-06-17 07:01:50

  git reset vs git revert

When maintaining code using version control systems such as git, it is unavoidable that we need to rollback some wrong commits either due to bugs or temp code revert. In this case, rookie developers would be very nervous because they may get lost on what they should do to rollback their changes without affecting others, but to veteran developers, this is their routine work and they can show you different ways of doing that. In this post, we will introduce two major ones used frequently by develo...

   GIT,GIT RESET,GIT REVERT     2019-02-02 08:26:39

  In-depth Exploration of Direct and Indirect Dependency Management in GoLang

The dependency management in Golang is handled using go mod. go mod is the official dependency management tool introduced by the Golang team. It assists developers in managing project dependencies to ensure the stability and maintainability of the project code. In go mod, dependencies are categorized into two types based on how packages are imported in the code: direct dependencies and indirect dependencies. Direct dependencies are explicitly referenced in the project code, while indirect depend...

   MODULE,GO,DIRECT DEPENDENCY,INDIRECT DEPENDENCY     2023-12-09 05:34:25